class AppConstants {
  // API Configuration
  static const String baseUrl = 'https://api.onlinebookstore.com';
  static const String apiVersion = 'v1';
  static const Duration apiTimeout = Duration(seconds: 30);
  
  // App Configuration
  static const String appName = 'Online Bookstore';
  static const String appVersion = '1.0.0';
  
  // Storage Keys
  static const String userTokenKey = 'user_token';
  static const String userDataKey = 'user_data';
  static const String cartDataKey = 'cart_data';
  static const String themeKey = 'theme_mode';
  static const String languageKey = 'language_code';
  
  // Pagination
  static const int defaultPageSize = 20;
  static const int maxPageSize = 100;
  
  // UI Constants
  static const double defaultPadding = 16.0;
  static const double smallPadding = 8.0;
  static const double largePadding = 24.0;
  static const double borderRadius = 12.0;
  static const double cardElevation = 4.0;
  
  // Animation Durations
  static const Duration shortAnimation = Duration(milliseconds: 200);
  static const Duration mediumAnimation = Duration(milliseconds: 300);
  static const Duration longAnimation = Duration(milliseconds: 500);
  
  // Image Placeholders
  static const String bookPlaceholder = 'assets/images/book_placeholder.png';
  static const String userPlaceholder = 'assets/images/user_placeholder.png';
  static const String logoPath = 'assets/images/logo.png';
  
  // Error Messages
  static const String networkError = 'Network error. Please check your connection.';
  static const String serverError = 'Server error. Please try again later.';
  static const String unknownError = 'An unknown error occurred.';
  static const String noDataFound = 'No data found.';
  
  // Success Messages
  static const String loginSuccess = 'Login successful!';
  static const String registerSuccess = 'Registration successful!';
  static const String orderPlaced = 'Order placed successfully!';
  static const String itemAddedToCart = 'Item added to cart!';
  static const String itemRemovedFromCart = 'Item removed from cart!';
}
